package com.budwk.app.enterprise.models;

import com.budwk.starter.common.openapi.annotation.ApiModel;
import com.budwk.starter.common.openapi.annotation.ApiModelProperty;
import com.budwk.starter.database.model.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @desc: 方法描述
 * @Author: laochiangx
 * @Date: 2024/3/8 16:17
 * @info:
 */


@Data
@EqualsAndHashCode(callSuper = false)
@Table("dfxy_enterprise.wx_external_investment")
@Comment("对外投资管理表")
@ApiModel(description = "对外投资管理表实体")
public class ExternalInvestmentManagement  extends BaseModel implements Serializable {
    private static final long serialVersionUID = 1L;

    @Column
    @Name
    @Comment("ID")
    @ApiModelProperty(description = "ID")
    @ColDefine(type = ColType.VARCHAR, width = 32)
    @PrevInsert(uu32 = true)
    private String id;

    // 被投资企业名称
    @Column("invested_enterprise_name")
    @Comment("被投资企业名称")
    @ApiModelProperty(description = "被投资企业名称")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String investedEnterpriseName;

    // 状态
    @Column("status")
    @Comment("状态")
    @ApiModelProperty(description = "状态")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    private String status;

    // 成立日期
    @Column("establishment_date")
    @Comment("成立日期")
    @ApiModelProperty(description = "成立日期")
    private Date establishmentDate;

    // 持股比例
    @Column("shareholding_ratio")
    @Comment("持股比例")
    @ApiModelProperty(description = "持股比例")
    private BigDecimal shareholdingRatio;

    // 认缴出资额
    @Column("amount_capital_subscribed")
    @Comment("认缴出资额")
    @ApiModelProperty(description = "认缴出资额")
    private BigDecimal amountCapitalSubscribed;

    // 最终受益股份
    @Column("final_beneficiary_shares")
    @Comment("最终受益股份")
    @ApiModelProperty(description = "最终受益股份")
    private Integer finalBeneficiaryShares;

    // 所属地区
    @Column("region")
    @Comment("所属地区")
    @ApiModelProperty(description = "所属地区")
    @ColDefine(type = ColType.VARCHAR, width = 100)
    private String region;

    // 所属行业
    @Column("industry")
    @Comment("所属行业")
    @ApiModelProperty(description = "所属行业")
    @ColDefine(type = ColType.VARCHAR, width = 100)
    private String industry;

    // 关联产品机构
    @Column("related_products_organizations")
    @Comment("关联产品机构")
    @ApiModelProperty(description = "关联产品机构")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String relatedProductsOrganizations;
}
